// 用promise进行串行执行
// 一旦 runPromisesSequentially 成为了异步函数，它就会隐式地返回一个 Promise。
// 如果在异步函数内部有 return 语句，那么这个 Promise 将会被解析（resolve）为 return 语句所返回的值。
async function runPromisesSequentially(promises) {
    const results = [];
    for (const promise of promises) {
      const result = await promise(); 
      console.log(result,'---result');
      
       // 等待每个 promise 执行完毕
      results.push(result);
    }
    console.log(typeof results,'---results');
    
    return results;
  }
  
  // 示例：每个 promise 返回一个延迟的值
  const promises = [
    () => new Promise(resolve => setTimeout(() => resolve("第一个"), 1000)),
    () => new Promise(resolve => setTimeout(() => resolve("第二个"), 500)),
    () => new Promise(resolve => setTimeout(() => resolve("第三个"), 200))
  ];
  
  runPromisesSequentially(promises).then(results => {
    console.log(results); // ["第一个", "第二个", "第三个"]
  });
  
  